// 配置axios的请求和响应拦截器
// 定义基准的请求地址
const apiBaseUrl = 'http://localhost:8888'

// 添加请求拦截器
axios.interceptors.request.use(function (config) {
    // 拼接完整的请求地址
    config.url = apiBaseUrl + '/' + config.url
    // 在发送请求之前做些什么
    return config;
}, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
});

// 添加响应拦截器
axios.interceptors.response.use(function (response) {
    // 2xx 范围内的状态码都会触发该函数。
    const {
        data
    } = response
    if (data.status === 200) {
        return data.data
    }
    if(data.status === 401) {
        // 打开登录遮罩层
        location.href='/login.html'
        return
    }

    // 对响应数据做点什么
    return Promise.reject(new Error(data.msg));
}, function (error) {
    // 超出 2xx 范围的状态码都会触发该函数。
    // 对响应错误做点什么
    return Promise.reject(error);
});


// 定义过滤器
template.defaults.imports.substr = function (value) {
    return value.substr(0, 10) + '...'
};
template.defaults.imports.dateFormat = function (value) {
    return moment(value).format('yyyy-MM-DD HH:mm:ss')
};
